package com.huawei

import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.rdd.RDD

object RDD {
        def main (args: Array[String]) {
        // 设置Spark application的名称
        val conf = new SparkConf().setAppName("CollectOutInfo")
        // 初始化Spark，设置日志级别为警告
        val sc = new SparkContext(conf)
        sc.setLogLevel("WARN")
        // 读取指定的目录或文件，由参数指定
        val text = sc.textFile(args(0))
        //    val text = rdd1
        // 过滤出支出的项目
        val data = text.filter(_.contains("out"))
        // 统计每个人的支出总和
        val result:RDD[(String,Int)] = data.map(line =>{
        val t= line.split(',')
        (t(0),t(2).toInt)
        }).reduceByKey(_ + _)

        println("支出的结果统计为：")
        result.collect().map(x => x._1 + ',' + x._2).foreach(println)
        sc.stop()
        }
        }